import time

import pymysql
from apscheduler.triggers.cron import CronTrigger
from apscheduler.schedulers.blocking import BlockingScheduler
import datetime




def delete_data():
    # 连接本地数据库, user:数据库用户,password:密码, db:数据库名称
    conn = pymysql.connect(host='10.10.1.1', user='ly', password='123', port=3306, db='ocr')
    if not conn:
        print('连接失败')
    cur = conn.cursor()
    new_time = time.time()  # 获取当前时间
    # 将当前两周之前的时间戳转为时间字符串
    create_time = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(new_time - 7 * 24 * 3600))
    print(create_time)
    cur.execute('select RMC_bar from out_ticket where create_time<%s order by id desc', create_time)  # 查询两周之前的数据,并降序排序
    select_result = cur.fetchall()  # 获取查询结果
    id = select_result[0]  # 获取查询结果中的id
    print(id)
    exit()
    cur.execute('delete from user where id<%s limit 1000', id)  # 按id进行删除,每次删除1000条数据
    conn.commit()  # 提交
    cur.close()
    conn.close()


if __name__ == '__main__':
    scheduler = BlockingScheduler()
    # 每天定时在16:00到16:30执行该函数
    cron = CronTrigger(
        second='0-59',  # 秒
        start_date=time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())),  # 开始时间
        minute='0-40',   # 分
        hour=17,  # 小时
        timezone='Asia/Shanghai')  # 中国时间
    scheduler.add_job(id='timing', trigger=cron, func=delete_data)  # 添加计时任务
    scheduler.start()  # 计时开始
